package com.hand.demo.domain.entity;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.choerodon.mybatis.annotation.ModifyAudit;
import io.choerodon.mybatis.annotation.VersionAudit;
import io.choerodon.mybatis.domain.AuditDomain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 项目经历表(HhrTaProjExp)实体类
 *
 * @author
 * @since 2025-06-16 12:16:52
 */

@ApiModel("项目经历表")
@VersionAudit
@ModifyAudit
@JsonInclude(value = JsonInclude.Include.NON_NULL)
@Table(name = "hhr_ta_proj_exp")
public class HhrTaProjExp extends AuditDomain {
    private static final long serialVersionUID = 456961773695520823L;

    public static final String FIELD_ID = "id";
    public static final String FIELD_END_DATE = "endDate";
    public static final String FIELD_PROJ_CONTENT = "projContent";
    public static final String FIELD_PROJ_CPY = "projCpy";
    public static final String FIELD_PROJ_NAME = "projName";
    public static final String FIELD_PROJ_POSITION = "projPosition";
    public static final String FIELD_PROJ_RESP = "projResp";
    public static final String FIELD_RESUME_ID = "resumeId";
    public static final String FIELD_START_DATE = "startDate";
    public static final String FIELD_TENANT_ID = "tenantId";

    @ApiModelProperty("自增主键")
    @Id
    @GeneratedValue
    private Long id;

    @ApiModelProperty(value = "结束时间(原始格式)")
    private String endDate;

    @ApiModelProperty(value = "项目内容描述")
    private Object projContent;

    @ApiModelProperty(value = "所在公司/组织")
    private String projCpy;

    @ApiModelProperty(value = "项目名称", required = true)
    @NotBlank
    private String projName;

    @ApiModelProperty(value = "担任职位")
    private String projPosition;

    @ApiModelProperty(value = "项目职责描述")
    private Object projResp;

    @ApiModelProperty(value = "关联简历ID", required = true)
    @NotNull
    private Long resumeId;

    @ApiModelProperty(value = "开始时间(原始格式)")
    private String startDate;

    @ApiModelProperty(value = "租户ID", required = true)
    @NotNull
    private Long tenantId;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getEndDate() {
        return endDate;
    }

    public void setEndDate(String endDate) {
        this.endDate = endDate;
    }

    public Object getProjContent() {
        return projContent;
    }

    public void setProjContent(Object projContent) {
        this.projContent = projContent;
    }

    public String getProjCpy() {
        return projCpy;
    }

    public void setProjCpy(String projCpy) {
        this.projCpy = projCpy;
    }

    public String getProjName() {
        return projName;
    }

    public void setProjName(String projName) {
        this.projName = projName;
    }

    public String getProjPosition() {
        return projPosition;
    }

    public void setProjPosition(String projPosition) {
        this.projPosition = projPosition;
    }

    public Object getProjResp() {
        return projResp;
    }

    public void setProjResp(Object projResp) {
        this.projResp = projResp;
    }

    public Long getResumeId() {
        return resumeId;
    }

    public void setResumeId(Long resumeId) {
        this.resumeId = resumeId;
    }

    public String getStartDate() {
        return startDate;
    }

    public void setStartDate(String startDate) {
        this.startDate = startDate;
    }

    public Long getTenantId() {
        return tenantId;
    }

    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }

}

